Configuration files are used to configure parameters and initial settings for computer software applications. Some applications may provide tools to create, modify, and verify the syntax of their configuration files. While for other applications, an individual, such as a system administrator, may be expected to create and modify files by hand using some type of text editor. However, using such mechanisms for maintaining configurations files may be disadvantaged. For example, these mechanisms can become quite cumbersome when a modification to a particular configuration involves editing configuration files across multiple machines. For one, some process must be used to track which machines are running the application, and using the configuration file, and where such machines are located. Secondly, the configuration file on each machine must then be edited accordingly one-by-one to implement the modification to the configuration.
Thus, a need in the industry exists for better mechanisms for maintaining configurations for computer software applications across multiple machines. More specifically, a need in the industry exists for better mechanisms that allow for centralized configurations for computer software applications in a manner that requires minimal code change in the applications to support the centralization of configurations while also still supporting individual configuration files for the applications. It is with respect to this and other considerations that the disclosure herein is presented.